/*

    This file is part of Hometree.

    Hometree is free software: you can redistribute it and/or modify
    it under the terms of the GNU Lesser General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    Hometree is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU Lesser General Public License for more details.

    You should have received a copy of the GNU Lesser General Public License
    along with Hometree.  If not, see <http://www.gnu.org/licenses/>.

    Copyright 2011,2012 Roman Held

*/
#include <QGLWidget>
#include "htrtreeentity.h"
#include "htrbranch.h"

HtrTreeEntity::HtrTreeEntity(QObject *parent)
 : HtrAbstractEntity(parent)
{
  connect(&mClient, SIGNAL(stateChanged()),
          this, SLOT(clientState()));

  mMonitor.setClient(&mClient);
  connect(&mMonitor, SIGNAL(resDetected(const QString &, qint32)),
          this, SLOT(createBranch(const QString &, qint32)));

  reconnect();

  mRoot = new HtrBranch(5.0);
}

void HtrTreeEntity::drawGL()
{
  mRoot->drawGL();
}
 
void HtrTreeEntity::clientState()
{
}

void HtrTreeEntity::reconnect()
{
  mClient.connectToHost("localhost",7000);
}

void HtrTreeEntity::createBranch(const QString &url, qint32 id)
{
  mRoot->init(url.split("/"));
}

